from time import sleep

from wechat_test.page.base_page import BasePage
from wechat_test.page.theatre_page import TheatrePage


class SubscribePage(BasePage):
    # 追剧页面

    def userwatchrecode(self, name):
        """
        最近观看模块
        1，查询最近观看得剧目，点击更多按钮
        2，点击删除按钮
        3，判断删除得剧目不在列表
        :return:
        """
        sleep(2)
        elements = []
        self.log_info(f'开始查询最近播放短剧有剧目：{name}')
        if self.poco(text=f"{name}").exists():
            self.log_info(f'用户有最近观看剧目：{name}')
            # self.poco(text=f"{name}").parent().click([0.91, 0.95])
            self.log_info('开始点击删除按钮')
            self.poco(resourceId='com.tencent.mm:id/yq').click([0.31,0.44])
            sleep(1)
            self.poco("android.webkit.WebView", type='android.webkit.WebView').click([0.5, 0.9])
            self.log_info(f'删除最近观看；{name}成功')
            sleep(2)
            for i in self.poco("android.widget.TextView"):
                elements.append(i.get_text())
            sleep(2)
        else:
            self.log_info(f'用户未观看剧目：{name}无需删除')

        return elements

    def userwatch(self,name):
        """
        最近观看模块
        1，查询最近观看得剧目，点击更多按钮
        2，点击删除按钮
        3，判断删除得剧目不在列表
        :return:
        """

        self.log_info(f'查询用户是否有最近播放短剧：《{name}》')

        try:
            if self.poco(text=f"{name}"):
                self.log_info(f'用户有最近观看剧目：《{name}》')
                self.log_info('开始点击删除按钮')
                self.poco(resourceId='com.tencent.mm:id/yq').click([0.31, 0.44])
                sleep(1)
                self.poco("android.webkit.WebView", type='android.webkit.WebView').click([0.5, 0.9])
                self.log_info(f'删除最近观看；《{name}》成功')
                sleep(2)
            else:
                self.log_info(f'用户未观看剧目：《{name}》无需删除')
        except Exception as e:
            self.log_error("元素找不到:",e)
        finally:
            self.log_info(f'跳转【剧场】页')
            self.poco(name='android.widget.LinearLayout').child('com.tencent.mm:id/a0b')[1].click()
            return TheatrePage(self.poco)

